package com.zyasdk.util;

import java.util.ArrayList;
import java.util.List;

import com.zyasdk.model.Country;
import com.zyasdk.model.MobileCode;

public class CountryUtils {

	private static List<Country> cList = null;

	public static void init() {

		StringBuilder sb = new StringBuilder();
		sb.append("*阿布哈兹,GE|289|67,88");
		sb.append("*阿富汗,AF|412|01,20,40,50");
		sb.append("*阿尔巴尼亚,AL|276|01,02,03,04");
		sb.append("*阿尔及利亚,DZ|603|01,02,03");
		sb.append("*美属萨摩亚,AS|544|11");
		sb.append("*安道尔,AD|213|03");
		sb.append("*安哥拉,AO|631|02,04");
		sb.append("*安圭拉(英属),AI|365|010,840");
		sb.append("*安提瓜和巴布达,AG|344,338");
		sb.append("*阿根廷,AR|722|");
		sb.append("*亚美尼亚,AM|283|");
		sb.append("*阿鲁巴(荷兰王国),AW|363|");
		sb.append("*澳大利亚,AU|505|");
		sb.append("*奥地利,AT|232|");
		sb.append("*阿塞拜疆,AZ|400|");
		sb.append("*巴哈马,BS|364|");
		sb.append("*巴林,BH|426|");
		sb.append("*孟加拉国,BD|470|");
		sb.append("*巴巴多斯,BB|342|");
		sb.append("*白俄罗斯,BY|257|");
		sb.append("*比利时,BE|206|");
		sb.append("*伯利兹,BZ|702|");
		sb.append("*贝宁,BJ|616|");
		sb.append("*百慕大,BM|350,338,310|");
		sb.append("*不丹,BT|402|");
		sb.append("*玻利维亚,BO|736|");
		sb.append("*波黑,BA|218|");
		sb.append("*博茨瓦纳,BW|652|");
		sb.append("*巴西,BR|724|");
		sb.append("*英属维尔京群岛,VG|348|");
		sb.append("*文莱,BN|528|");
		sb.append("*保加利亚,BG|284|");
		sb.append("*布基纳法索,BF|613|");
		sb.append("*布隆迪,BI|642|");
		sb.append("*柬埔寨,KH|456|");
		sb.append("*喀麦隆,CM|624|");
		sb.append("*加拿大,CA|302|");
		sb.append("*佛得角,CV|625|");
		sb.append("*开曼群岛(英国),KY|346|");
		sb.append("*中非共和国,CF|623|");
		sb.append("*乍得,TD|622|");
		sb.append("*智利,CL|730|");
		sb.append("*中华人民共和国,CN|460|");
		sb.append("*圣诞岛(澳大利亚),CX||");
		sb.append("*可可斯群岛(澳大利亚),CC||");
		sb.append("*哥伦比亚,CO|732|");
		sb.append("*科摩罗,KM|654|");
		sb.append("*刚果共和国,CG|629|");
		sb.append("*库克群岛(新西兰),CK|548|");
		sb.append("*哥斯达黎加,CR|712|");
		sb.append("*克罗地亚,HR|219|");
		sb.append("*古巴,CU|368|");
		sb.append("*塞浦路斯,CY|280|");
		sb.append("*捷克共和国,CZ|230|");
		sb.append("*刚果民主共和国,CD|630|");
		sb.append("*丹麦(丹麦王国),DK|238|");
		sb.append("*吉布提,DJ|638|");
		sb.append("*多米尼克,DM|366|");
		sb.append("*多米尼加共和国,DO|370|");
		sb.append("*东帝汶,TL|514|");
		sb.append("*厄瓜多尔,EC|740|");
		sb.append("*埃及,EG|602|");
		sb.append("*萨尔瓦多,SV|706|");
		sb.append("*赤道几内亚,GQ|627|");
		sb.append("*厄立特里亚,ER|657|");
		sb.append("*爱沙尼亚,EE|248|");
		sb.append("*埃塞俄比亚,ET|636|");
		sb.append("*法罗群岛(丹麦王国),FO|288|");
		sb.append("*斐济,FJ|542|");
		sb.append("*芬兰,FI|244|");
		sb.append("*法国,FR|208,23424|");
		sb.append("*法属几内亚(法国),GF||");
		sb.append("*法属玻里尼西亚(法国),PF|547|");
		sb.append("*法属南半球领地(法国),TF||");
		sb.append("*加蓬,GA|628|");
		sb.append("*冈比亚,GM|607|");
		sb.append("*格鲁吉亚,GE|282|");
		sb.append("*德国,DE|262|");
		sb.append("*加纳,GH|620|");
		sb.append("*直布罗陀(英国),GI|266|");
		sb.append("*希腊,GR|202|");
		sb.append("*格陵兰(丹麦王国),GL|290|");
		sb.append("*格林纳达,GD|352|");
		sb.append("*哥德洛普(法国),GP|340|");
		sb.append("*危地马拉,GT|704|");
		sb.append("*耿济岛(英国),GB|234|");
		sb.append("*几内亚,GN|611|");
		sb.append("*几内亚比绍,GW|632|");
		sb.append("*圭亚那,GY|738|");
		sb.append("*海地,HT|372|");
		sb.append("*洪都拉斯,HN|708|");
		sb.append("*香港(中华人民共和国特别行政区),HK|454|");
		sb.append("*匈牙利,HU|216|");
		sb.append("*冰岛,IS|274|");
		sb.append("*印度,IN|404,405|");
		sb.append("*印度尼西亚,ID|510|");
		sb.append("*伊朗,IR|432|");
		sb.append("*伊拉克,IQ|418|");
		sb.append("*爱尔兰,IE|272|");
		sb.append("*以色列,IL|425|");
		sb.append("*意大利,IT|222|");
		sb.append("*科特迪瓦,CI|612|");
		sb.append("*牙买加,JM|338|");
		sb.append("*日本,JP|440|");
		sb.append("*泽西岛(英国),JE|234|");
		sb.append("*约旦,JO|416|");
		sb.append("*哈萨克斯坦,KZ|401|");
		sb.append("*肯尼亚,KE|639|");
		sb.append("*基里巴斯,KI|545|");
		sb.append("*朝鲜民主主义人民共和国,KP|467|");
		sb.append("*韩国,KR|450|");
		sb.append("*科索沃,RKS|212,293|");
		sb.append("*科威特,KW|419|");
		sb.append("*吉尔吉斯斯坦,KG|437|");
		sb.append("*老挝,LA|457|");
		sb.append("*拉托维亚,LV|247|");
		sb.append("*黎巴嫩,LB|415|");
		sb.append("*莱索托,LS|651|");
		sb.append("*利比里亚,LR|618|");
		sb.append("*利比亚,LY|606|");
		sb.append("*列支敦士登,LI|295|");
		sb.append("*立陶宛,LT|246|");
		sb.append("*卢森堡,LU|270|");
		sb.append("*澳门(中华人民共和国),MO|455|");
		sb.append("*马其顿,MK|294|");
		sb.append("*马达加斯加,MG|646|");
		sb.append("*马拉维,MW|650|");
		sb.append("*马来西亚,MY|502|");
		sb.append("*马尔代夫,MV|472|");
		sb.append("*马里,ML|610|");
		sb.append("*马耳他,MT|278|");
		sb.append("*马绍尔群岛,MH||");
		sb.append("*马提尼克(法国),MQ|340|");
		sb.append("*毛里塔尼亚,MR|609|");
		sb.append("*毛里求斯,MU|617|");
		sb.append("*马约特岛(法国),YT||");
		sb.append("*墨西哥,MX|334|");
		sb.append("*密克罗尼西亚联邦,FM|550|");
		sb.append("*摩尔多瓦,MD|259|");
		sb.append("*摩纳哥,MC|212|");
		sb.append("*蒙古国,MN|428|");
		sb.append("*黑山,ME|297|");
		sb.append("*蒙特塞拉特岛(英国),MS||");
		sb.append("*摩洛哥,MA|604|");
		sb.append("*莫桑比克,MZ|643|");
		sb.append("*缅甸,MM|414|");
		sb.append("*纳米比亚,NA|649|");
		sb.append("*瑙鲁,NR|536|");
		sb.append("*尼泊尔,NP|429|");
		sb.append("*荷兰(荷兰王国),NL|204|");
		sb.append("*荷属安的列斯(荷兰王国),AN|362|");
		sb.append("*新喀里多尼亚(法国),NC|546|");
		sb.append("*新西兰,NZ|530|");
		sb.append("*尼加拉瓜,NI|710|");
		sb.append("*尼日尔,NE|614|");
		sb.append("*尼日利亚,NG|621|");
		sb.append("*纽埃岛,NU|555|");
		sb.append("*诺福克岛,NF|505|");
		sb.append("*北马里亚纳群岛,MP||");
		sb.append("*挪威,NO|242|");
		sb.append("*阿曼,OM|422|");
		sb.append("*巴基斯坦,PK|410|");
		sb.append("*帕劳,PW|552|");
		sb.append("*巴勒斯坦民族权力机构,PS|425|");
		sb.append("*巴拿马,PA|714|");
		sb.append("*巴布亚新几内亚,PG|537|");
		sb.append("*巴拉圭,PY|744|");
		sb.append("*秘鲁,PE|716|");
		sb.append("*菲律宾,PH|515|");
		sb.append("*皮特凯恩岛(英国),PN||");
		sb.append("*波兰,PL|260|");
		sb.append("*葡萄牙,PT|268|");
		sb.append("*波多黎各,PR|330|");
		sb.append("*卡塔尔,QA|427|");
		sb.append("*留尼汪岛(法国),RE|647|");
		sb.append("*罗马尼亚,RO|226|");
		sb.append("*俄罗斯联邦,RU|250|");
		sb.append("*卢旺达,RW|635|");
		sb.append("*圣基茨和尼维斯,SKN|356|");
		sb.append("*圣卢西亚,LC|358|");
		sb.append("*圣皮埃尔和密克隆(法国),PM|308|");
		sb.append("*圣文森特和格林纳丁斯,VC|360|");
		sb.append("*萨摩亚,WS|549|");
		sb.append("*圣马力诺,SM|292|");
		sb.append("*圣多美和普林西比,ST|626|");
		sb.append("*沙特,SA|420|");
		sb.append("*塞内加尔,SN|608|");
		sb.append("*塞尔维亚,RS|220|");
		sb.append("*塞舌尔,SC|633|");
		sb.append("*塞拉利昂,SL|619|");
		sb.append("*新加坡,SG|525|");
		sb.append("*斯洛伐克,SK|231|");
		sb.append("*斯洛文尼亚,SI|293|");
		sb.append("*所罗门群岛,SB|540|");
		sb.append("*索马里,SO|637|");
		sb.append("*南非,ZA|655|");
		sb.append("*南苏丹,SS|659|");
		sb.append("*西班牙,ES|214|");
		sb.append("*斯里兰卡,LK|413|");
		sb.append("*苏丹,SD|634|");
		sb.append("*苏里南,SR|746|");
		sb.append("*斯威士兰,SZ|653|");
		sb.append("*瑞典,SE|240|");
		sb.append("*瑞士,CH|228|");
		sb.append("*叙利亚,SY|417|");
		sb.append("*台湾,TW|466|");
		sb.append("*塔吉克斯坦,TJ|436|");
		sb.append("*坦桑尼亚,TZ|640|");
		sb.append("*泰国,TH|520|");
		sb.append("*多哥,TG|615|");
		sb.append("*汤加,TO|539|");
		sb.append("*特立尼达和多巴哥,TT|374|");
		sb.append("*突尼斯,TN|605|");
		sb.append("*土耳其,TR|286|");
		sb.append("*土库曼斯坦,TM|438|");
		sb.append("*特克斯和凯科斯群岛,TC|376,338|");
		sb.append("*图瓦卢,TV|553|");
		sb.append("*乌干达,UG|641|");
		sb.append("*乌克兰,UA|255|");
		sb.append("*阿联酋,AE|424|");
		sb.append("*英国,UK|234,235|");
		sb.append("*美国,US|310,311,316|");
		sb.append("*乌拉圭,UY|748|");
		sb.append("*乌兹别克斯坦,UZ|434|");
		sb.append("*瓦努阿图,VU|541|");
		sb.append("*梵蒂冈,VA|225|");
		sb.append("*委内瑞拉,VE|734|");
		sb.append("*越南,VN|452|");
		sb.append("*也门,YE|421|");
		sb.append("*赞比亚,ZM|645|");
		sb.append("*津巴布韦,ZW|648|");
		sb.append("*国际,GJ|901|");

		cList = new ArrayList<Country>();

		String[] first = sb.toString().split("\\*", -1);
		String[] aa = null;
		String[] countrys = null;
		String[] mcs = null;
		List<MobileCode> list = null;
		MobileCode mob = null;
		Country c = null;
		for (String ss : first) {
			if (ss.equals(""))
				continue;
			aa = ss.split("\\|", -1);
			countrys = aa[0].split(",", -1);
			mcs = aa[1].split(",", -1);
			list = new ArrayList<MobileCode>();
			for (String mc : mcs) {
				mob = new MobileCode(mc, "");
				list.add(mob);
			}
			c = new Country(countrys[0], countrys[1], list);
			cList.add(c);
		}

	}

	public static List<Country> init(String s) {

		StringBuilder sb = new StringBuilder();
		sb.append("*阿布哈兹,GE|289|67,88");
		sb.append("*阿富汗,AF|412|01,20,40,50");
		sb.append("*阿尔巴尼亚,AL|276|01,02,03,04");
		sb.append("*阿尔及利亚,DZ|603|01,02,03");
		sb.append("*美属萨摩亚,AS|544|11");
		sb.append("*安道尔,AD|213|03");
		sb.append("*安哥拉,AO|631|02,04");
		sb.append("*安圭拉(英属),AI|365|010,840");
		sb.append("*安提瓜和巴布达,AG|344,338");
		sb.append("*阿根廷,AR|722|");
		sb.append("*亚美尼亚,AM|283|");
		sb.append("*阿鲁巴(荷兰王国),AW|363|");
		sb.append("*澳大利亚,AU|505|");
		sb.append("*奥地利,AT|232|");
		sb.append("*阿塞拜疆,AZ|400|");
		sb.append("*巴哈马,BS|364|");
		sb.append("*巴林,BH|426|");
		sb.append("*孟加拉国,BD|470|");
		sb.append("*巴巴多斯,BB|342|");
		sb.append("*白俄罗斯,BY|257|");
		sb.append("*比利时,BE|206|");
		sb.append("*伯利兹,BZ|702|");
		sb.append("*贝宁,BJ|616|");
		sb.append("*百慕大,BM|350,338,310|");
		sb.append("*不丹,BT|402|");
		sb.append("*玻利维亚,BO|736|");
		sb.append("*波黑,BA|218|");
		sb.append("*博茨瓦纳,BW|652|");
		sb.append("*巴西,BR|724|");
		sb.append("*英属维尔京群岛,VG|348|");
		sb.append("*文莱,BN|528|");
		sb.append("*保加利亚,BG|284|");
		sb.append("*布基纳法索,BF|613|");
		sb.append("*布隆迪,BI|642|");
		sb.append("*柬埔寨,KH|456|");
		sb.append("*喀麦隆,CM|624|");
		sb.append("*加拿大,CA|302|");
		sb.append("*佛得角,CV|625|");
		sb.append("*开曼群岛(英国),KY|346|");
		sb.append("*中非共和国,CF|623|");
		sb.append("*乍得,TD|622|");
		sb.append("*智利,CL|730|");
		sb.append("*中华人民共和国,CN|460|");
		sb.append("*圣诞岛(澳大利亚),CX||");
		sb.append("*可可斯群岛(澳大利亚),CC||");
		sb.append("*哥伦比亚,CO|732|");
		sb.append("*科摩罗,KM|654|");
		sb.append("*刚果共和国,CG|629|");
		sb.append("*库克群岛(新西兰),CK|548|");
		sb.append("*哥斯达黎加,CR|712|");
		sb.append("*克罗地亚,HR|219|");
		sb.append("*古巴,CU|368|");
		sb.append("*塞浦路斯,CY|280|");
		sb.append("*捷克共和国,CZ|230|");
		sb.append("*刚果民主共和国,CD|630|");
		sb.append("*丹麦(丹麦王国),DK|238|");
		sb.append("*吉布提,DJ|638|");
		sb.append("*多米尼克,DM|366|");
		sb.append("*多米尼加共和国,DO|370|");
		sb.append("*东帝汶,TL|514|");
		sb.append("*厄瓜多尔,EC|740|");
		sb.append("*埃及,EG|602|");
		sb.append("*萨尔瓦多,SV|706|");
		sb.append("*赤道几内亚,GQ|627|");
		sb.append("*厄立特里亚,ER|657|");
		sb.append("*爱沙尼亚,EE|248|");
		sb.append("*埃塞俄比亚,ET|636|");
		sb.append("*法罗群岛(丹麦王国),FO|288|");
		sb.append("*斐济,FJ|542|");
		sb.append("*芬兰,FI|244|");
		sb.append("*法国,FR|208,23424|");
		sb.append("*法属几内亚(法国),GF||");
		sb.append("*法属玻里尼西亚(法国),PF|547|");
		sb.append("*法属南半球领地(法国),TF||");
		sb.append("*加蓬,GA|628|");
		sb.append("*冈比亚,GM|607|");
		sb.append("*格鲁吉亚,GE|282|");
		sb.append("*德国,DE|262|");
		sb.append("*加纳,GH|620|");
		sb.append("*直布罗陀(英国),GI|266|");
		sb.append("*希腊,GR|202|");
		sb.append("*格陵兰(丹麦王国),GL|290|");
		sb.append("*格林纳达,GD|352|");
		sb.append("*哥德洛普(法国),GP|340|");
		sb.append("*危地马拉,GT|704|");
		sb.append("*耿济岛(英国),GB|234|");
		sb.append("*几内亚,GN|611|");
		sb.append("*几内亚比绍,GW|632|");
		sb.append("*圭亚那,GY|738|");
		sb.append("*海地,HT|372|");
		sb.append("*洪都拉斯,HN|708|");
		sb.append("*香港(中华人民共和国特别行政区),HK|454|");
		sb.append("*匈牙利,HU|216|");
		sb.append("*冰岛,IS|274|");
		sb.append("*印度,IN|404,405|");
		sb.append("*印度尼西亚,ID|510|");
		sb.append("*伊朗,IR|432|");
		sb.append("*伊拉克,IQ|418|");
		sb.append("*爱尔兰,IE|272|");
		sb.append("*以色列,IL|425|");
		sb.append("*意大利,IT|222|");
		sb.append("*科特迪瓦,CI|612|");
		sb.append("*牙买加,JM|338|");
		sb.append("*日本,JP|440|");
		sb.append("*泽西岛(英国),JE|234|");
		sb.append("*约旦,JO|416|");
		sb.append("*哈萨克斯坦,KZ|401|");
		sb.append("*肯尼亚,KE|639|");
		sb.append("*基里巴斯,KI|545|");
		sb.append("*朝鲜民主主义人民共和国,KP|467|");
		sb.append("*韩国,KR|450|");
		sb.append("*科索沃,RKS|212,293|");
		sb.append("*科威特,KW|419|");
		sb.append("*吉尔吉斯斯坦,KG|437|");
		sb.append("*老挝,LA|457|");
		sb.append("*拉托维亚,LV|247|");
		sb.append("*黎巴嫩,LB|415|");
		sb.append("*莱索托,LS|651|");
		sb.append("*利比里亚,LR|618|");
		sb.append("*利比亚,LY|606|");
		sb.append("*列支敦士登,LI|295|");
		sb.append("*立陶宛,LT|246|");
		sb.append("*卢森堡,LU|270|");
		sb.append("*澳门(中华人民共和国),MO|455|");
		sb.append("*马其顿,MK|294|");
		sb.append("*马达加斯加,MG|646|");
		sb.append("*马拉维,MW|650|");
		sb.append("*马来西亚,MY|502|");
		sb.append("*马尔代夫,MV|472|");
		sb.append("*马里,ML|610|");
		sb.append("*马耳他,MT|278|");
		sb.append("*马绍尔群岛,MH||");
		sb.append("*马提尼克(法国),MQ|340|");
		sb.append("*毛里塔尼亚,MR|609|");
		sb.append("*毛里求斯,MU|617|");
		sb.append("*马约特岛(法国),YT||");
		sb.append("*墨西哥,MX|334|");
		sb.append("*密克罗尼西亚联邦,FM|550|");
		sb.append("*摩尔多瓦,MD|259|");
		sb.append("*摩纳哥,MC|212|");
		sb.append("*蒙古国,MN|428|");
		sb.append("*黑山,ME|297|");
		sb.append("*蒙特塞拉特岛(英国),MS||");
		sb.append("*摩洛哥,MA|604|");
		sb.append("*莫桑比克,MZ|643|");
		sb.append("*缅甸,MM|414|");
		sb.append("*纳米比亚,NA|649|");
		sb.append("*瑙鲁,NR|536|");
		sb.append("*尼泊尔,NP|429|");
		sb.append("*荷兰(荷兰王国),NL|204|");
		sb.append("*荷属安的列斯(荷兰王国),AN|362|");
		sb.append("*新喀里多尼亚(法国),NC|546|");
		sb.append("*新西兰,NZ|530|");
		sb.append("*尼加拉瓜,NI|710|");
		sb.append("*尼日尔,NE|614|");
		sb.append("*尼日利亚,NG|621|");
		sb.append("*纽埃岛,NU|555|");
		sb.append("*诺福克岛,NF|505|");
		sb.append("*北马里亚纳群岛,MP||");
		sb.append("*挪威,NO|242|");
		sb.append("*阿曼,OM|422|");
		sb.append("*巴基斯坦,PK|410|");
		sb.append("*帕劳,PW|552|");
		sb.append("*巴勒斯坦民族权力机构,PS|425|");
		sb.append("*巴拿马,PA|714|");
		sb.append("*巴布亚新几内亚,PG|537|");
		sb.append("*巴拉圭,PY|744|");
		sb.append("*秘鲁,PE|716|");
		sb.append("*菲律宾,PH|515|");
		sb.append("*皮特凯恩岛(英国),PN||");
		sb.append("*波兰,PL|260|");
		sb.append("*葡萄牙,PT|268|");
		sb.append("*波多黎各,PR|330|");
		sb.append("*卡塔尔,QA|427|");
		sb.append("*留尼汪岛(法国),RE|647|");
		sb.append("*罗马尼亚,RO|226|");
		sb.append("*俄罗斯联邦,RU|250|");
		sb.append("*卢旺达,RW|635|");
		sb.append("*圣基茨和尼维斯,SKN|356|");
		sb.append("*圣卢西亚,LC|358|");
		sb.append("*圣皮埃尔和密克隆(法国),PM|308|");
		sb.append("*圣文森特和格林纳丁斯,VC|360|");
		sb.append("*萨摩亚,WS|549|");
		sb.append("*圣马力诺,SM|292|");
		sb.append("*圣多美和普林西比,ST|626|");
		sb.append("*沙特,SA|420|");
		sb.append("*塞内加尔,SN|608|");
		sb.append("*塞尔维亚,RS|220|");
		sb.append("*塞舌尔,SC|633|");
		sb.append("*塞拉利昂,SL|619|");
		sb.append("*新加坡,SG|525|");
		sb.append("*斯洛伐克,SK|231|");
		sb.append("*斯洛文尼亚,SI|293|");
		sb.append("*所罗门群岛,SB|540|");
		sb.append("*索马里,SO|637|");
		sb.append("*南非,ZA|655|");
		sb.append("*南苏丹,SS|659|");
		sb.append("*西班牙,ES|214|");
		sb.append("*斯里兰卡,LK|413|");
		sb.append("*苏丹,SD|634|");
		sb.append("*苏里南,SR|746|");
		sb.append("*斯威士兰,SZ|653|");
		sb.append("*瑞典,SE|240|");
		sb.append("*瑞士,CH|228|");
		sb.append("*叙利亚,SY|417|");
		sb.append("*台湾,TW|466|");
		sb.append("*塔吉克斯坦,TJ|436|");
		sb.append("*坦桑尼亚,TZ|640|");
		sb.append("*泰国,TH|520|");
		sb.append("*多哥,TG|615|");
		sb.append("*汤加,TO|539|");
		sb.append("*特立尼达和多巴哥,TT|374|");
		sb.append("*突尼斯,TN|605|");
		sb.append("*土耳其,TR|286|");
		sb.append("*土库曼斯坦,TM|438|");
		sb.append("*特克斯和凯科斯群岛,TC|376,338|");
		sb.append("*图瓦卢,TV|553|");
		sb.append("*乌干达,UG|641|");
		sb.append("*乌克兰,UA|255|");
		sb.append("*阿联酋,AE|424|");
		sb.append("*英国,UK|234,235|");
		sb.append("*美国,US|310,311,316|");
		sb.append("*乌拉圭,UY|748|");
		sb.append("*乌兹别克斯坦,UZ|434|");
		sb.append("*瓦努阿图,VU|541|");
		sb.append("*梵蒂冈,VA|225|");
		sb.append("*委内瑞拉,VE|734|");
		sb.append("*越南,VN|452|");
		sb.append("*也门,YE|421|");
		sb.append("*赞比亚,ZM|645|");
		sb.append("*津巴布韦,ZW|648|");
		sb.append("*国际,GJ|901|");

		cList = new ArrayList<Country>();

		String[] first = sb.toString().split("\\*", -1);
		String[] aa = null;
		String[] countrys = null;
		String[] mcs = null;
		List<MobileCode> list = null;
		MobileCode mob = null;
		Country c = null;
		for (String ss : first) {
			if (ss.equals(""))
				continue;
			aa = ss.split("\\|", -1);
			countrys = aa[0].split(",", -1);
			mcs = aa[1].split(",", -1);
			list = new ArrayList<MobileCode>();
			for (String mc : mcs) {
				mob = new MobileCode(mc, "");
				list.add(mob);
			}
			c = new Country(countrys[0], countrys[1], list);
			cList.add(c);
		}
		return cList;
	}

	/**
	 * 获取国家
	 * */
	public static Country getCountry(String imsi) {
		if (cList == null)
			init();
		if (imsi == null || imsi.trim().equals(""))
			return null;
		for (Country c : cList) {
			for (MobileCode mc : c.getMcList()) {
				if (!mc.getMcc().equals("")) {
					if (imsi.indexOf(mc.getMcc()) == 0) {
						return c;
					}
				}
			}
		}
		return null;
	}

	/**
	 * 根据传递过来的字母得到国家
	 * */
	public static String getCountryByEn(String countryEn) {
		if (cList == null)
			init();
		if (countryEn == null || countryEn.trim().equals(""))
			return null;
		for (Country c : cList) {
			if (c.getCode().equals(countryEn)) {
				return c.getName();
			}
		}
		return null;
	}

	/**
	 * 根据国家名称获取国家简码
	 * 
	 * @param country
	 * @return
	 */
	public static String getCountryCode(String country) {
		if (cList == null)
			init();
		if (country == null || country.trim().equals(""))
			return null;
		for (Country c : cList) {
			if (c.getName().equals(country)) {
				return c.getCode();
			}
		}
		return null;
	}

	/**
	 * 字母总共国家
	 * */
	public static List<String> getCountryList() {
		List<String> list = new ArrayList<String>();
		list.add("ID");
		list.add("IN");
		list.add("MY");
		list.add("TH");
		return list;
	}
}
